To analyze errors within a software system, traces are commonly used. Traces are typically understood to be records of information about execution of the software system for purposes of debugging the software system. Tracing can be useful in analyzing error situations of work processes (e.g., through kernel or user traces) to identify the reason of malfunctioning.
While tracing can be a useful mechanism, it has significant limitations within distributed systems. To really localize an error, usually traces from an entire business scenario would need to be analyzed. A business scenario refers to multiple related enterprise services that are related in one or more processes. In a distributed business scenario, parts of an application, and one or more parts of the business scenario processes may be executed concurrently on different application servers. One or more parts of the business scenario processes may be based on different communication protocols (e.g., RFC (remote function call), HTTP (hypertext transfer protocol)). Based on the distributed nature of many enterprise platforms, current trace infrastructures are not known that can provide enough information to localize and merge the associated trace files, especially across protocols. Thus, tracking or coordinating trace data within a distributed system is costly in time and effort.
Descriptions of certain details and implementations follow, including a description of the figures, which may depict some or all of the embodiments described below, as well as discussing other potential embodiments or implementations of the inventive concepts presented herein. An overview of embodiments of the invention is provided below, followed by a more detailed description with reference to the drawings.